package com.yn.module.material.utils.xls;

import com.yn.module.material.utils.enums.ConstEnum;
import org.springframework.stereotype.Component;

import java.lang.annotation.*;


/**
 * @description:    类上的标注信息，用来被策略模式所识别
 * @author: 叶甯
 * @create: 2022/10/13 14:51
 * @since: 1.0.0
 * @copyright (C), 2022, https://gitee.com/johnny .All rights reserved.
 */
@Target(ElementType.TYPE) // 该注解使用在类上
@Retention(RetentionPolicy.RUNTIME) //VM将在运行期也保留注释，因此可以通过反射机制读取注解的信息
@Documented
//子类可以集成此注解
@Inherited
@Component // 让注解可以被Spring识别
public @interface ExcelOperation {

    // 导入/导出 的excel的sheet index
    int sheetIndex() default 0;
    // 导入的类对象
    Class importClz();

    // 导入的标题行数
    int importHeaderLines() default 1;

    ConstEnum.ExcelEnum type() default ConstEnum.ExcelEnum.MEDICARE_GROUP;

}
